# -*- coding: utf-8 -*-
"""
Created on Mon Sep 16 11:04:20 2024

@author: 焊板子的兔子
"""

"""
标签控件QLabel通常用来显示提示性信息，也可以显示图片和gif格式的动画。

QLabel(parent:QWidget=None,f=Qt.WindowFlags)
QLabel(text:str,parent,f=Qt.WindowFlags)

可在本程序源码以及控件常用信号和方法说明，可在以下仓库中找到 https://gitee.com/xhy_312/Qt-For-Python.git
"""


import sys
from PySide6.QtWidgets import QApplication,QWidget,QLabel
from PySide6.QtGui import QPixmap,QFont
from PySide6.QtCore import QRect,QSize

class myWidget(QWidget):
    def __init__(self, parent = None):
        super().__init__(parent)
        self.setFixedSize(QSize(640,480))#QSize类用于描述尺寸，setFixedSize（）方法用于设置一个固定尺寸窗口
        
        #用label控件显示基本文字
        self.label1 = QLabel(self)#实例化一个label对象
        font = QFont("黑体",pointSize = 25)#定义一个字体变量
        self.label1.setGeometry(QRect(0,0,100,30))#QRect用于描述一个矩形        
        self.label1.setFont(font)#设置字体
        self.label1.setText('你好')
        
        #用label控件显示一个图片
        self.label2 = QLabel(self)
        self.label2.setGeometry(QRect(110,0,100,100))
        self.label2.setPixmap(QPixmap('1.png'))
        
        #用label控件设置一个对外超链接
        self.label3 = QLabel(self)
        self.label3.setGeometry(QRect(0,50,100,100))
        self.label3.setText("<A href = 'http://www.baidu.com/'>链接到百度首页</A>")        
        self.label3.linkHovered.connect(self.hover)#linkHoovered为内置信号，表示光标放置于超链接上
        self.label3.linkActivated.connect(self.activated)#linkActivated为内置信号，表示点击了超链接
        self.label3.setOpenExternalLinks(True)#设置为True时，可以通过点击链接到指定站点
        
    def hover(self,link):
        print("光标放在了超链接上")
    def activated(self,link):
        print("点击了超链接")
        
if __name__ == "__main__":
    app = QApplication.instance()   #一个应用程序实例对象
    if app is None:
        app = QApplication()
    myWindow = myWidget()
    myWindow.show()
    n = app.exec()
    sys.exit(n)